import QQmap from "../../utils/qqmap"
let mapSdk = null;
let timer = null;
Page({
  openLocation(e) {
    console.log(e.currentTarget);
    let {
      name,
      address,
      latitude,
      longitude
    } = e.currentTarget.dataset;
    //打开位置
    wx.openLocation({
      name,
      address,
      latitude,
      longitude
    })
    .then((res)=>{
      console.log(res);
    })
    .catch((err)=>{
      console.log(err);
    })
  },
  /**
   * 页面的初始数据
   */
  ipt(e) {
    // console.log(e);
    //防抖处理
    if (timer) {
      clearTimeout(timer)
    }

    timer = setTimeout(() => {
      let val = e.detail.value;
      //解构通过定位获取的自己的位置
      let {
        latitude,
        longitude
      } = this.data.loc;
      console.log(val);
      //调用qq地图的关键字提示补全接口
      if (val === "") {
        console.log("没有了");
        //输入框中的值没有之后,要隐藏地址列表
        this.setData({
          info: []
        })
      } else {
        mapSdk.getSuggestion({
          keyword: val,
          location: latitude + "," + longitude,
          region: "南京市",
          regio_fix: 1,
          success: (res) => {
            console.log(res);
            let data = res.data; //获取的数据
            //处理之后的数据
            let info = data.map((item) => {
              return {
                id: item.id,
                title: item.title,
                address: item.address,
                city: item.city,
                latitude: item.location.lat,
                longitude: item.location.lng
              }
            })
            console.log(info);
            this.setData({
              info
            })
          },
          fail: (err) => {
            console.log(err);
          }
        })
      }

    }, 500)

  },

  data: {
    info: [],
    loc: {
      latitude: "",
      longitude: ""
    }
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    //实例化qq地图
    mapSdk = new QQmap({
      key: "FSWBZ-A6XRU-JVRVC-BFKUI-D5KTJ-76BUU"
    })

    //打开定位获取自己的位置

    wx.getLocation()
      .then(res => {
        console.log(res);
        this.setData({
          loc: {
            longitude: res.longitude,
            latitude: res.latitude
          }
        })
      })
      .catch((err) => {
        console.log(err);
      })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})